package com.classInitial;

public class Test {
	public static void main(String args[]) throws ClassNotFoundException {
		Test test = new Test();
		Class.forName("com.classInitial.TestA", true, test.getClass().getClassLoader());
	/*	一个类的运行，JVM做会以下几件事情 1、类装载 2、链接 3、初始化 4、实例化；
		而初始化阶段做的事情是初始化静态变量和执行静态方法等的工作。所以，
		当Class.forName(args[0],true,off.getClass().getClassLoader());
		中的true变为false的时候，就是告诉JVM不需再load class之后进行initial的工作。
		这样，将initial的工作推迟到了newInstance的时候进行。所以，static块的绝对不是
		什么“只是在类被第一次实体化的时候才会被仅仅调用一次”，而应该是在类被初始化的时候，
		仅仅调用一次。*/
		Class.forName("com.classInitial.Book", true, test.getClass().getClassLoader());
		
		
	}
}
